/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package clases;

import java.util.GregorianCalendar;

/**
 *
 * @author tamerdark
 */
public class Fecha {

    /** Compara la fecha actual para ver si esta en el rango extremoInicial, 
     *  extremoFinal.
     * 
     * @param extremoInicial fecha en formato dd/MM/yyyy
     * @param extremoFinal fecha en formato dd/MM/yyyy
     * @return 0 si extremoInicial <= fechaActual <= extremoFinal
     */
    
    
    
    public static int compararFechas(String extremoInicial, String extremoFinal) {
        GregorianCalendar todayGC = new GregorianCalendar(); 
        String[] fechaInicial = extremoInicial.split("/");
        String[] fechaFinal = extremoFinal.split("/");
        GregorianCalendar Final = new GregorianCalendar(Integer.parseInt(fechaFinal[2].trim()),
                Integer.parseInt(fechaFinal[1].trim()) - 1, Integer.parseInt(fechaFinal[0].trim()));
        System.out.println(Final.getTime());
        System.out.println(fechaFinal[0] + fechaFinal[1] + fechaFinal[2]);
        GregorianCalendar Inicial = new GregorianCalendar(Integer.parseInt(fechaInicial[2].trim()),
                Integer.parseInt(fechaInicial[1].trim()) - 1, Integer.parseInt(fechaInicial[0].trim()));
        //System.out.println(fechaInicial[0] + fechaInicial[1] + fechaInicial[2]);
        System.out.println(Inicial.getTime());
        System.out.println(todayGC.getTime());
         System.out.println(Final.getTime());
        if ((todayGC.before(Final) && todayGC.after(Inicial))
                || (todayGC.equals(Final) || todayGC.equals(Inicial))) {
            return 0;
        }
        if (todayGC.before(Inicial)) {
            return -1;
        }
        if (todayGC.after(Final)) {
            return 1;
        }
        return -1;
    }

    /** Compara fechaAComparar para ver si esta en el rango extremoInicial, 
     *  extremoFinal.
     * 
     * @param extremoInicial fecha en formato dd/MM/yyyy
     * @param fechaAComparar fecha en formato dd/MM/yyyy
     * @param extremoFinal fecha en formato dd/MM/yyyy
     * @return 0 si extremoInicial <= fechaAComparar <= extremoFinal
     */
    public static int compararFechas(String extremoInicial, String fechaAComparar, String extremoFinal) {
        return 0;
    }
    
    /** Compara fecha con la fecha actual.
     * 
     * @param fecha fecha en formato dd/MM/yyyy
     * @return -1 si actual < fecha, 0 si =, 1 si >
     */
    public static int compararFechas(String fecha) {
        GregorianCalendar todayGC = new GregorianCalendar();
        String[] fechaFinal = fecha.split("/");
        GregorianCalendar Final = new GregorianCalendar(Integer.parseInt(fechaFinal[2].trim()),
                Integer.parseInt(fechaFinal[1].trim()) - 1, Integer.parseInt(fechaFinal[0].trim()));
        System.out.println(Final.getTime());
        System.out.println(fechaFinal[0] + fechaFinal[1] + fechaFinal[2]);
        System.out.println(todayGC.getTime());
        if (todayGC.before(Final)) {
            return -1;
        }else if (todayGC.equals(Final)) {
            return 0;
        } else{
            return 1;
        }
    }
}
